package hn.sigit.logic.queries;

import hn.sigit.model.commons.IResponsibility;
import hn.sigit.model.commons.IRestriction;
import hn.sigit.model.commons.IRight;
import hn.sigit.model.commons.ISpatialZone;
import hn.sigit.model.hnd.administrative.HND_MunicipalTransaction;
import hn.sigit.model.hnd.administrative.HND_Transaction;
import hn.sigit.model.hnd.administrative.HND_TransactionLog;
import hn.sigit.model.ladm.administrative.LA_AdministrativeSource;

import java.util.List;

import javax.ejb.Local;

@Local
public interface TransactionQueryHelper extends QueryHelper<HND_MunicipalTransaction> {
	String NAME = "transactionQueryHelper";
	

	List<LA_AdministrativeSource> getFileSources();

	List<ISpatialZone> getOriginatedSpatialZones();

	List<ISpatialZone> getRequestedSpatialZones();

	List<ISpatialZone> getNeighborSpatialZones();

	List<ISpatialZone> getNeighborNeighborSpatialZones();

	List<ISpatialZone> getInCourseSpatialZones();

	List<HND_TransactionLog> getTransactionLogs();

	List<IRight> getSpatialZoneRights(ISpatialZone spatialZone);

	List<IRestriction> getSpatialZoneRestrictions(ISpatialZone spatialZone);

	List<IResponsibility> getSpatialZoneResponsibilities(
			ISpatialZone spatialZone);

	boolean isParcelInstance(ISpatialZone spatialZone);

	String mapOptions(int state);

	String mapScript(int state, String mapControlName);

	String claimingUser(HND_TransactionLog tl);

	boolean isApprovedLocally();


}